home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Acorn Risc Technologies StrongARM CD-ROM
/
Acorn Risc Technologies StrongARM CD-ROM.iso
/
software
/
utils
/
pro_copy
/
!ProCopy
/
Resources
/
procopy
(
.txt
)
< prev
next >
Encoding:
Amiga
Atari
Commodore
DOS
FM Towns/JPY
Macintosh
Macintosh JP
Macintosh to JP
NeXTSTEP
RISC OS/Acorn
Shift JIS
UTF-8
Wrap
RISC OS BBC BASIC V Source
|
1996-08-11
|
26.6 KB
|
1,187 lines
--> ProCopy 200
This program and all documentation
David Holden 1993, 1994
'A_%=216:B_$="June 1996":
262343,E_%,F_%
2:F_%!28=-1:
262341,,F_%:
(!F_%=H_%)
(!F_%=I_%)J_%=
262342,,F_%
!F_%=H_%
F_%!4=4
F_%!24=13
262364,F_%!24
17,18:
F_%!16
F_%!20
R_%:F_%!12=F_%!8:F_%!16=4:S_%=F_%!40:I%=F_%+44:
?I%>31:I%+=1:
:?I%=13:
262375,17,F_%,F_%!4:
T_($(F_%+44),F_%!40)
E_%=0
1:U_%=
2:U_%=
4:U_%=
5:U_%=
6:U_%=
e_(0)
21:E_%=
e_(1)
:E_%=&C31
262351,,F_%+&C0:h_%=F_%!&C8:
i_%=j_%
F_%!4=-1
0:!F_%=H_%:
262342,,F_%:k_%=
l_(I_%):J_%=
l_(n_%)
l_(R_%)
F_%!4
h_%=1
262356,,i_%,r_%,s_%
262351,,F_%+&C0:h_%=F_%!&C8:t_%=F_%!12:u_%=F_%!16:
F_%!16=v_%
r_%=F_%!&C0-100:
(-3)):
(-1):
(-2):!F_%=H_%:
262342,,F_%:k_%=
l_(I_%)
(-3):
x_(11)=
E_%=0:U_%=
x_(32)=
x_(11)=
E_%=0:U_%=
:!F_%=H_%:
262342,,F_%:k_%=
l_(I_%)
2:s_%=428:i_%=j_%:
262356,,i_%,r_%,s_%
(-3)):
(-1):
l_(R_%)
(-2):
__%>0
l_(I_%)
(-3):
__%>0
__%=0
l_(I_%)
x_(31)=
U_%<=0
U_%>0
x_(11)=
E_%=0:U_%=
4:A`%-=1:
A`%<0 A`%=B`%
C`(I_%,3,A`%)
5:A`%+=1:
A`%>B`% A`%=0
C`(I_%,3,A`%)
U_%>0:
D`%-=1:
D`%<0 D`%=B`%
C`(H_%,3,D`%)
U_%>0:
D`%+=1:
D`%>B`% D`%=0
C`(H_%,3,D`%)
U_%<=0
U_%=0
E_%=0
U_%=8
E`((2)):U_%=0:E_%=&C31:!F_%=H_%:
262342,,F_%:J_%=
E`((3)):E_%=&C31
:E_%=0:
E`((2))
E`(__%)
U_%>0:
__%=0:
u_%=H`%
F_%!8=4 G`%=F_%!12:
8,13,J`$+".Preset"
L`(1,
M`(15))
4:P%=O`%!((u_%-2)*4):P`$=$P%:
R`(u_%)
S`(17)=
R`(u_%)
R`(u_%):P%=O`%!((u_%-2)*4):Q%=P%:
:P%-=1:
?P%=13:
:P%-=1:
?P%=13
P%=T`%-1:P%+=1:
:Q%+=1:
?Q%=13:Q%+=1:
Q%<U`%:?P%=?Q%:P%+=1:Q%+=1:
V`(P%-T`%):
__%=0:
ZW`%=
x_(29):!X`%=H_%:X`%!4=3:
262350,,X`%:D`%=?(X`%!28)-48:F`%=
E`(__%):
x_(23)=
$$Y`%=
M`(18)+
(D`%):
S`(-1)=
:Z`%=
x_(18)=
U_%=9
U_%=3
U_%=20
E_%=0:
a`:Z`%=
:W`%=
x_(29):
E`(__%):
x_(18)=
U_%=9
U_%=3
U_%=20
E_%=0:
D`%+=1:
D`%>B`% D`%=0
D`%<>0
?E_%=&C31:U_%=0:Z`%=
34,11,1,&58:
34,11,0,&58:
d`%>=
x_(34)=
L`(1,
M`(0))
E`(__%):E_%=&C31:U_%=0:F`%=
l_(H_%):J_%=
x_(23)=
)f`%=
:U_%=8:E_%=0:g`%=0:h`%=0:
E`(-1)
l_(H_%):J_%=
34,11,1,&58:
34,11,0,&58:
>120:
h`%<5 h`%=0:
E`(-1):
>100:
h`%<4 h`%=4:
E`(-5)
h`%<3 h`%=3:
E`(-4)
h`%<2 h`%=2:
E`(-3)
h`%=0 h`%=1:
E`(-2)
262732,1,D`%,g`%
,,g`%,F%:
8 f`%=
c_%=c_% E_%=&C31:U_%=0:
>&10000)
<&20000)
Q!F_%=H_%:F_%!4=3:
262350,,F_%:D`%=?(F_%!28)-48:
(-1)c`%=
:D`%=0
e`=0 I%=
L`(1,
M`(1)):
d`%>=
e` I%=
L`(1,
M`(2)):
C`(H_%,4,
e`):F`%=
:Z`%=
:W`%=
x_(29):
E`(__%):
x_(26)=
!F_%=H_%:
262342,,F_%:J_%=
x_(18)=
U_%=9
U_%=3
U_%=20
E_%=0:
e_(i`%):
$k`%=15:
x_(18)=
k`%+=1:
format
x_(17)=
k`%+=2:
verify
1)=0 k`%+=i`%
262725,
(D`%)+
0,l`%:
!l`%=&4021209 l`%!16=&168000
(l`%!16<>__%)
x_(19)=
k`%+=1
S`(7)=1 k`%+=1
E`(k`%):
m`(H_%,5,"Copy")
m`(H_%,5,"Format/Copy"):
1024)
m`(H_%,5,"Copy/Verify")
m`(H_%,5,"Format/Copy/Verify"):
1024)
:o`%=D`%<<29:p`%=q`%:r`%=q`%+__%:s`%=__%
160:t`%=0:
x_(15)=
262343,0,F_%:
U_%=0:E_%=&C31
:E_%=0:
U_%=6
:U_%=21:
v`%=640 w`%=159:x`%=1
s`%=s`%*2:w`%=79:x`%=2
m`(H_%,11,"All"):*FX229,0
263872:
y`%=0
&100:
t`%=0
79:z`%=t`%
_`%:J%=``%+36:
15:!J%=z`%
Aa%<<16:J%+=4:Aa%=(Aa%+1)
262720,0,4,Ba%,0,``%:Ba%+=s`%:Aa%=(Aa%+Ca%)
1680:
t`%=0
159:y`%=t`%
2:Da%=t`%
2:z`%=Da%
y`%<<8
_`%:Aa%=1:
J%=``%+36
``%+116
8:!J%=z`%
Aa%<<16:J%!4=z`%
(Aa%+11)<<16:Aa%+=1:
262720,0,4,Ba%,0,``%:Ba%+=s`%:
t`%=0
159:y`%=t`%
2:Da%=t`%
2:z`%=Da%
y`%<<8
_`%:J%=``%+36:
Ea%:!J%=z`%
(Aa%+Fa%)<<16:J%+=4:Aa%=((Aa%+1)
Ea%):
262720,0,4,Ba%,0,``%:Ba%+=s`%:
y`%=1 Aa%=(Aa%+Ca%)
:o`%=D`%<<29:p`%=q`%:
v`%=640 w`%=159
s`%=s`%*2:w`%=79
262720,,2
l`%<<6,o`%,p`%,s`%
E%;F%:
k`%>16
393792,,0,o`%,,s`%
I0o`%+=s`%:p`%+=s`%:
263873:d`%+=1:*fx229,1
C`(H_%,8,d`%):
C`(H_%,11,0):
m`(H_%,5,"Waiting"):
E`(4):
"ADFS:Dismount :"+
x_(28)=
x_(35)
E_%=&C31:U_%=0:
C`(H_%,11,t`%):*FX229,0
262720,,2
l`%<<6,o`%,p`%,s`%
E%;F%:
k`%>16
393792,,0,o`%,,s`%
b_:=&C31
\*o`%+=s`%:p`%+=s`%:t`%+=x`%:
t`%<159:=0
^ed`%+=1:Ha,1:
C`(H_%,8,d`%):
C`(H_%,11,0):
m`(H_%,5,"Waiting"):
"ADFS:Dismount :"+
x_(35)
b`:=0
E`(4):
x_(28)=
U_%=0:=&C31
C`(H_%,11,t`%):*FX229,0
640:z`%=(t`%
2)<<8
_`%:J%=``%+36:
15:!J%=z`%
Aa%<<16:J%+=4:Aa%=(Aa%+1)
262720,0,4,Ba%,0,``%:Ba%+=s`%:Aa%=(Aa%+Ca%)
1680:y`%=t`%
2:Da%=t`%
2:z`%=Da%
y`%<<8
_`%:Aa%=1:
J%=``%+36
``%+116
8:!J%=z`%
Aa%<<16:J%!4=z`%
(Aa%+11)<<16:Aa%+=1:
262720,0,4,Ba%,0,``%:Ba%+=s`%
:y`%=t`%
2:Da%=t`%
2:z`%=Da%
y`%<<8
_`%:J%=``%+36:
Ea%:!J%=z`%
(Aa%+Fa%)<<16:J%+=4:Aa%=((Aa%+1)
Ea%):
262720,0,4,Ba%,0,``%:Ba%+=s`%:
y`%=1 Aa%=(Aa%+Ca%)
262720,,2
l`%<<6,o`%,p`%,s`%
E%;F%:
k`%>16
393792,,0,o`%,,s`%
(o`%+=s`%:p`%+=s`%:t`%+=1:
t`%<160:=0
x_(28)=
U_%=0:Ja 229,1:=&C31
U_%=0:
262725,
(D`%)+
0,l`%:
!l`%=&4021209 l`%!16=&168000
l`%!16<>__%
x_(19)=
>>>> reformat if wrong size
S`(7)=
m`(H_%,5,"Copying"):
E`(15):
262343,0,F_%:o`%=D`%<<29:p`%=q`%:r`%=q`%+__%:
x_(13)=
:s`%=__%
160:t`%=0:E_%=0:U_%=4:
263872:
m`(H_%,11,"All"):*FX229,0
262720,,2
l`%<<6,o`%,p`%,__%:
263873:*FX229,1
x_(17)=
d`%+=1:*fx229,1
C`(H_%,8,d`%):
C`(H_%,11,0):
m`(H_%,5,"Waiting"):
"ADFS:Dismount :"+
x_(35)
E`(4):
x_(28)=
p%,h%,l%,l$:h%=0:
13,0,h%:
x_(36)=
l$=Na$+Oa$
l$=Na$+
Oa$,4)
13,&C7,l$
13,&87,l$
"settype "+l$+" fff"
8,17,l$
,,,,l%:$Y`%=Pa$+
10:p%=0:
Y`%?p%<>10:
Y`%?p%=160 Y`%?p%=32
-p%+=1:
12,1,h%,Y`%,p%+1,l%:
13,0,h%:
Ka:=0
262720,,2
l`%<<6,o`%,p`%,s`%
E%;F%:o`%+=s`%:p`%+=s`%:t`%+=1:
C`(H_%,11,t`%):
p`%<r`%:=4
x_(17)=
Ma:=U_%
C`(H_%,11,0):
m`(H_%,5,"Waiting"):d`%+=1:
C`(H_%,8,d`%):
b`:=U_%
E_%=&C31:=0
*fx229,1
C`(H_%,11,0):
m`(H_%,5,"Waiting"):
E`(1):E_%=&C31:U_%=0:
263874:
<>&1089A
E`(5):F`%=
l_(H_%):J_%=
x_(20)=
Qa(1):
S`(8)=
E_%=0:
Qa(1):
E`(5):F`%=
l_(Ra-w%):J_%=
*fx229,1
C`(H_%,11,0):
m`(H_%,5,"Waiting"):
E`(1):E_%=&C31:U_%=0:
263874:
<>&1089A
E`(5):F`%=
l_(H_%):J_%=
x_(20)=
E_%=0:
S`(8)=
E_%=0:
E`(5):F`%=
l_(Ra-w%):J_%=
m`(H_%,5,"Verifying"):
E`(12):
262343,0,F_%:p`%=D`%<<29:L%=__%
160:t`%=0:
x_(14)=
E_%=0:U_%=5:
m`(H_%,11,"All"):
263872:*FX229,0
393792,,0,p`%,,__%
,,p`%,,R%;F%:*fx229,1
C`(H_%,11,p`%
263873:
d`%+=1:*fx229,1
C`(H_%,8,d`%):
C`(H_%,11,0):
m`(H_%,5,"Waiting"):
263873:
"ADFS:Dismount :"+
x_(35)
U_%=0:E_%=&C31:
x_(28)=
E`(4):
393792,,0,p`%,,L%
,,p`%;F%:
1):=7
t`%<159
t`%+=1:
C`(H_%,11,t`%):=5
:d`%+=1:E_%=0:
C`(H_%,11,0):
m`(H_%,5,"Waiting"):
C`(H_%,8,d`%):
"ADFS:Dismount :"+
b`:=U_%
E`(4):
x_(28)=
b_:*fx229,1
m`(H_%,5,
M`(19)):
x_(21)=
x_(25)=
e_(1)
S`(9)=
e_(1)
x_(25)=
S`(9)=
E_%=0:
:E_%=0:
Sa:Ta%+=1:E_%=&C31:U_%=0:
C`(H_%,13,Ta%):
L`(1,
M`(10))
;pU_%=0:
m`(H_%,5,"Formatting"):
E`(10):Ba%=D`%<<29:t`%=0:
x_(12)=
m`(H_%,11,"All"):
262343,0,F_%:M%=
1024)
n`(M%,800)
1600:
n`(M%,1600)
1440:
n`(M%,1440)
n`(M%,720)
n`(M%,640)
1680:
n`(M%,1680)
:Ua 20000,
M`(20)
:Z`%=
:E_%=0:
U_%=3
U_%=6
n`(w`%,v`%):
800:Ca%=4:
10,5,2,2,15,7,1,0,0,1,32,5,3,2,0,0,0,&80,&0C,0,0,0
0,4,0,0,50,0,0,0,0,0,0,0,&5A,0,0,0,5,2,1,&A5,80,0,0,0
1600:Ca%=9:
10,10,2,4,15,6,1,0,0,4,64,6,9,2,0,0,0,0,&19,0,0,0
0,4,0,0,50,0,0,0,0,0,0,0,&5A,0,0,0,10,4,1,&A5,80,0,0,0
1440:Ca%=16:
9,18,2,4,0,0,0,0,1,0,0,0,0,0,0,0,0,&80,&16,0,0,0
0,2,0,0,50,0,0,0,0,0,0,0,&5A,0,0,0,18,4,1,&4E,80,0,0,0
720:Ca%=7:
9,9,2,2,0,0,0,0,1,0,0,0,0,0,0,0,0,&40,&0B,0,0,0
0,2,0,0,50,0,0,0,0,0,0,0,&5A,0,0,0, 9,2,1,&4E,80,0,0,0
640:Ca%=12:
8,16,1,2,0,0,0,0,64,0,0,0,0,2,0,0,0,0,&0A,0,0,0
0,1,0,0,50,0,0,0,0,0,0,0,&39,0,0,0,16,2,&0D,&A5,80,0,0,0
1680:Ca%=20:
9,&15,2,4,0,0,1,0,1,0,0,0,0,0,0,0,0,&40,&1A,0,0,0
0,2,0,0, &20,0,0,0, 0,0,0,0, 12,0,0,0, 21,4,1,&E5, 80,0,0,0
20000,
M`(21)
J%:l`%?I%=J%:
I%=36
59:l`%?I%=0:
J%:``%?I%=J%:
:``%!24=0:``%!28=0:``%!32=0:Aa%=0:Fa%=(l`%?8)
3:Ea%=l`%?1:s`%=Ea%*!``%:Ba%=D`%<<29:_`%=((?l`%)-7)<<24:t`%=0:
E_%=0:U_%=6:
263872:*fx229,0
y`%=0
&100:
t`%=0
79:z`%=t`%
_`%:J%=``%+36:
15:!J%=z`%
Aa%<<16:J%+=4:Aa%=(Aa%+1)
262720,0,4,Ba%,0,``%:Ba%+=s`%:Aa%=(Aa%+Ca%)
1680:
t`%=0
159:y`%=t`%
2:Da%=t`%
2:z`%=Da%
y`%<<8
_`%:Aa%=1:
J%=``%+36
``%+116
8:!J%=z`%
Aa%<<16:J%!4=z`%
(Aa%+11)<<16:Aa%+=1:
262720,0,4,Ba%,0,``%:Ba%+=s`%:
t`%=0
159:y`%=t`%
2:Da%=t`%
2:z`%=Da%
y`%<<8
_`%:J%=``%+36:
Ea%:!J%=z`%
(Aa%+Fa%)<<16:J%+=4:Aa%=((Aa%+1)
Ea%):
262720,0,4,Ba%,0,``%:Ba%+=s`%:
y`%=1 Aa%=(Aa%+Ca%)
:Z`%=
263873:*fx229,1
Ka:=0
C`(H_%,11,t`%):
640:z`%=(t`%
2)<<8
_`%:J%=``%+36:
15:!J%=z`%
Aa%<<16:J%+=4:Aa%=(Aa%+1)
262720,0,4,Ba%,0,``%:Ba%+=s`%:Aa%=(Aa%+Ca%)
1680:y`%=t`%
2:Da%=t`%
2:z`%=Da%
y`%<<8
_`%:Aa%=1:
J%=``%+36
``%+116
8:!J%=z`%
Aa%<<16:J%!4=z`%
(Aa%+11)<<16:Aa%+=1:
262720,0,4,Ba%,0,``%:Ba%+=s`%
:y`%=t`%
2:Da%=t`%
2:z`%=Da%
y`%<<8
_`%:J%=``%+36:
Ea%:!J%=z`%
(Aa%+Fa%)<<16:J%+=4:Aa%=((Aa%+1)
Ea%):
262720,0,4,Ba%,0,``%:Ba%+=s`%:
y`%=1 Aa%=(Aa%+Ca%)
:t`%+=1:
t`%<160:=6
Ko`%=D`%<<29:p`%=q`%:t`%=0:
v`%=640 w`%=159:x`%=1
s`%=s`%*2:w`%=79:x`%=2
!X`%=H_%:
262342,,X`%:!X`%=I_%:X`%!4=3:
262350,,X`%:A`%=?(X`%!28)-48:o`%=A`%<<29:
x_(22)=
__%>0 $Y`%="Please Confirm:|Read from drive :"+
(A`%):
S`(-1)=
393797,
(A`%)+
0,l`%
E%;F%:
(-26)
(-122)
"save <ProCopy$Dir>.^.Drec "+
~(l`%)+" +30":
"settype <ProCopy$Dir>.^.Drec FFD"
0I%=E%+4:
?I%>31:I%+=1:
:?I%=13:
!E%,$(E%+4)
:Pa$="":I%=l`%+22:
?I%>31
I%<l`%+32:
?I%=32 Pa$+=
(160)
Pa$+=
(?I%)
-I%+=1:
Pa$)=
(Pa$)>2:Pa$=
Pa$):
E`(20):
Xa(Pa$):
262343,0,X`%:
Ya(l`%!16)=
M`(22),
m__%=l`%!16:Za%=q`%:s`%=__%
160:t`%=0:r`%=q`%+__%:d`%=0:Ta%=0:
m`(I_%,1,Pa$):
C`(H_%,8,0):
C`(H_%,13,0):=
263872:
m`(I_%,8,"All"):
*FX229,0
262720,,1
l`%<<6,o`%,q`%,__%:*FX229,1
C`(I_%,8,0):
E`(__%):
C`(H_%,8,0):
C`(H_%,13,0):!F_%=I_%:
262342,,F_%:J_%=
263873:
"ADFS:Dismount :"+
x_(27)=
):=&C31
262720,,1,o`%,Za%,s`%:t`%+=1:Za%+=s`%:o`%+=s`%:
C`(I_%,8,t`%):
Za%<r`%:=1
Xa(Pa$):
C`(I_%,8,0):
E`(__%):
"ADFS:Dismount :"+
x_(27)=
F_%!40
&180:
10,5,2,2,15,7,1,0,0,1,32,5,3,2,0,0,0,&80,&0C,0
&160:
10,10,2,4,15,6,1,0,0,4,64,6,9,2,0,0,0,0,&19,0
&144:
9,18,2,4,0,0,0,0,1,0,0,0,0,0,0,0,0,&80,&16,0
&172:
9,9,2,2,0,0,0,0,1,0,0,0,0,0,0,0,0,&40,&0B,0
&164:
8,16,1,2,0,0,0,0,64,0,0,0,0,2,0,0,0,0,&0A,0
&170:
9,&15,2,4,0,0,1,0,1,0,0,0,0,0,0,0,0,&40,&1A,0,0,0
F_%!12=F_%!8:F_%!16=4:S_%=F_%!40:I%=F_%+44:P`$="":
?I%:P`$+=
(?I%):I%+=1:
262375,17,F_%,F_%!4:
x_(22)=
__%>0
S`(3)=
8,17,P`$
I%,,T%,,ba%:S_%=(T%>>8)
&FFF:
I%=0 I%=
L`(1,
M`(4)):
Ya(ba%)=
L`(1,
M`(5)):
ca(S_%):__%=l`%!16:
__%<>ba% I%=
L`(1,
M`(6)):
8,16,P`$,q`%
,,,,ba%:$F_%=P`$:I%=F_%:
?I%>32:I%+=1:
?I%<>
".":I%-=1:
:Pa$=$(I%+1):!F_%=I_%:
262342,,F_%:
Xa(Pa$):s`%=__%
160:t`%=0:r`%=q`%+__%:d`%=0:Ta%=0:
C`(H_%,8,0):
C`(H_%,13,0):
E`(__%):
x_(27)=
x_(33)=
x_(26)=
!F_%=H_%:
262342,,F_%:k_%=
x_(30)=
!F_%=H_%:F_%!4=3:
262350,,F_%:D`%=?(F_%!28)-48:F`%=
E`(__%):
x_(23)=
$Y`%="Please Confirm:|Write to drive :"+
(D`%):
S`(-1)=
x_(18)=
U_%=3:E_%=0
S`(da%):
r%,p%,x%,y%,a$:
da%=-1
p%=Y`%
:p%=ea%:
da%>0:
:p%+=1:
?p%<32:p%+=1:da%-=1:
:a$="":
?p%<>124
?p%>31:a$+=
(?p%):p%+=1:
m`(fa%,1,a$):
m`(fa%,2,$(p%+1)):
ga(fa%,-1,0,0):!X`%=fa%:
262368,,X`%:?X`%=1:X`%!1=X`%!4:X`%!3=X`%!8:X`%!5=X`%!12:X`%!7=X`%!16-44:
7,21,X`%:
262354,fa%,-1,0,-200,-1,0:
262343,0,F_%
F_%!24=13 F_%!12=fa%:F_%!16=4:r%=6
F_%!24=27 F_%!12=fa%:F_%!16=0:r%=6
F_%!12=fa%:!F_%=fa%:
262342,,F_%:
53,-1,4
,,r%:
53,-1,11
,,x%:x%=x%<<r%:
53,-1,5
,,r%:
53,-1,12
,,y%:y%=y%<<r%:
0,0,x%,y%:
F_%!16=4:=
ga(w%,ha%,ia%,ja%):
ka%,la%,ma%,na%,oa%:
53,-1,4
,,ka%:
53,-1,11
,,la%:la%=(la%<<ka%)+ia%:
53,-1,5
,,ka%:
53,-1,12
,,ma%:ma%=(ma%<<ka%)+ja%:!F_%=w%:
262347,,F_%:na%=F_%!12-F_%!4:oa%=F_%!16-F_%!8:la%=(la%-na%)
@`ma%=(ma%-oa%)
2:F_%!4=la%:F_%!12=la%+na%:F_%!8=ma%:F_%!16=ma%+oa%:F_%!28=ha%:
262341,,F_%:
ca(pa%):
&180:
10,5,2,2,15,7,1,0,0,1,32,5,3,2,0,0,0,&80,&0C,0
&160:
10,10,2,4,15,6,1,0,0,4,64,6,9,2,0,0,0,0,&19,0
&144:
9,18,2,4,0,0,0,0,1,0,0,0,0,0,0,0,0,&80,&16,0
&172:
9,9,2,2,0,0,0,0,1,0,0,0,0,0,0,0,0,&40,&0B,0
&272:
9,10,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,&40,&0B,0
&164:
8,16,1,2,0,0,0,0,64,0,0,0,0,2,0,0,0,0,&0A,0
&170:
9,&15,2,4,0,0,1,0,1,0,0,0,0,0,0,0,0,&40,&1A,0,0,0
20000,
M`(6)
I%=l`%
l`%+40
4:!I%=0:
J%:l`%?I%=J%:
C`(H_%,8,d`%):
C`(H_%,13,Ta%):!F_%=I_%:
262342,,F_%:
l_(H_%):J_%=
:k_%=
Xa(n$):
m`(H_%,1,n$):
m`(G`%,1,n$):
m`(I_%,1,n$):
m`(qa%,0,n$):
x%,s%:
53,-1,4
,,s%:
53,-1,11
,,x%:x%=(x%<<s%)-220:!X`%=qa%:
262347,,X`%:
X`%!4>x% X`%!4=x%:X`%!12=x%+204
X`%!28=-1:
262341,,X`%:
o_(ra%):
__%>0
x_(24)=
S`(11)=
Xa("None"):
C`(H_%,11,0):
m`(H_%,5,"Waiting"):
C`(H_%,8,0):
C`(H_%,13,0):__%=0:Pa$="":d`%=0:Ta%=0:U_%=0:E_%=&C31:F`%=
E`(0):
Wa:I%=
Ya(0):!F_%=H_%:
262342,,F_%:k_%=
e`:!F_%=H_%:F_%!4=4:
262350,,F_%:I%=F_%!28:
?I%>31:I%+=1:
:?I%=13:=
($(F_%!28))
C`(w%,i%,v%):!X`%=w%:X`%!4=i%:
262350,,X`%:X`%!8=0:X`%!12=0:$(X`%!28)=
(v%):
262349,,X`%:
m`(w%,i%,s$):!X`%=w%:X`%!4=i%:
262350,,X`%:X`%!8=0:X`%!12=0:$(X`%!28)=s$:
262349,,X`%:
I`:!F_%=G`%:
262347,,F_%:X%=F_%!4-F_%!20:Y%=F_%!16-F_%!24:F_%!4=H`%:
262350,,F_%:!F_%=F_%!8+X%:F_%!4=F_%!12+Y%:F_%!8=F_%!16+X%:F_%!12=F_%!20+Y%:
271360,%11000101,1,F_%!28,F_%:
271361:
262351,,F_%:F_%!20=F_%!12:F_%!24=F_%!16:F_%!28=!F_%:F_%!32=F_%!4:F_%!&80=G`%:F_%!&84=1:
262350,,F_%+&80:sa$="":I%=F_%!&9C:
?I%>32:sa$+=
(?I%):I%+=1:
:F_%!36=__%:F_%!40=S_%:F_%!16=1:$(F_%+44)=sa$
@!F_%=(
(sa$)+49)
3:F_%!12=0:
262375,17,F_%,F_%!20,F_%!24:
`I%=F_%+44:
?I%>31:I%+=1:
:?I%=13:
8,10,$(F_%+44),S_%,,q`%,q`%+__%:!F_%=G`%:
262342,,F_%:
x_(da%):!F_%=n_%:F_%!4=da%:
262350,,F_%:
(F_%!24
1<<21):=
Ya(v`%):
262380,ta%+v`%,-1
e%<(ta%+v`%):=
l_(w%):X`%!&80=w%:
262347,,X`%+&80:F_%!&9C=-1:
262341,,X`%+&80:
va,wa,xa,Ra,m%:wa=1:va=2:Ra=4:xa=&80:
ya%&140:m%=ya%:za%=
_a (m%,"Options",140):m%=
`a ("Save",0,0):m%=
`a ("Restore",xa,0):j_%=
_a (m%,"Pro Copy",140):m%=
`a ("Read",0,0):Ab%=m%+8:m%=
`a ("Write",0,G`%)
`a ("Options",0,za%):m%=
`a ("Preset",0,0):m%=
`a ("Clear",0,0):m%=
`a ("Info",va,Bb%):m%=
`a ("Quit",xa,0):
Wa:!Ab%=!Ab%
1<<22:
aa:!Ab%=!Ab%
(1<<22):
_a (a%,Cb$,Db%):$a%=Cb$:a%!12=&70207:a%!16=Db%:a%!20=40:a%!24=0:m%=a%+28:=a%
`a (Eb$,Fb%,Gb%):!m%=Fb%:m%!4=Gb%:m%!8=&7000001:$(m%+12)=Eb$:=m%+24
E`:!F_%=-1:F_%!4=0:F_%!8=-16:F_%!12=96:F_%!16=84:F_%!20=&1700210B:F_%!24=Hb%:F_%!28=Ib%:F_%!32=8:
262338,,F_%
I%:=I%
E`(v`%):!X`%=-1:X`%!4=v_%:
262350,,X`%:
1600*1024:$Hb%="Ready":$Jb%="file_160":$Ib%="sfile_160":S_%=&160
1440*1024:$Hb%="Ready":$Jb%="file_144":$Ib%="sfile_144":S_%=&144
800*1024:$Hb%="Ready":$Jb%="file_180":$Ib%="sfile_180":S_%=&180
720*1024:$Hb%="Ready":$Jb%="file_172":$Ib%="sfile_172":S_%=&172
640*1024:$Hb%="Ready":$Jb%="file_164":$Ib%="sfile_164":S_%=&164
1680*1024:$Hb%="Ready":$Jb%="file_170":$Ib%="sfile_170":S_%=&170
0:$Hb%="":$Ib%="sempty":$Jb%=""
1:$Hb%="Ready"
2:$Hb%="Auto"
3:$Hb%="Pause"
4:$Hb%="Copied"
5:$Hb%="Failed"
10:$Hb%="Format"
12:$Hb%="Verify"
15:$Hb%="Copy"
16:$Hb%="F/C"
17:$Hb%="C/V"
18:$Hb%="F/C/V"
20:$Hb%="Read":$Ib%="sread":$Jb%=""
-1:$Hb%="Next":$Ib%="sinsert_1"
-2:$Hb%="Next":$Ib%="sinsert_2":X`%!12+=40:X`%!20-=20
-3:$Hb%="Next":$Ib%="sinsert_3":X`%!12+=40:X`%!20-=20
-4:$Hb%="Next":$Ib%="sinsert_4":X`%!12+=40:X`%!20-=20
-5:$Hb%="Next":$Ib%="sinsert_5":X`%!12+=40:X`%!20-=20
:$Hb%=
(t`%)
262353,-2,X`%!8,X`%!12,X`%!16,X`%!20:!X`%=G`%:X`%!4=H`%:X`%!8=0:X`%!12=0:
262349,,X`%:
C_ (Kb$,Lb%):E_%=&C31:U_%=0:
263874:*FX229,1
J!X`%=
:$(X`%+4)="Error "+
)+": "+Kb$+
262367,X`%,1,Mb%:
262365,Nb%,&4B534154
L`(Ob%,a$):X`%!&80=0:$(X`%+&84)=a$+
262367,X`%+&80,16+Ob%,Mb%
,I%:=I%
Qb%&300:
2:P%=Qb%:[OPT Rb:stmfd r13!,{r14}:adr r8,Sb:mov r0,r0,lsl#2:ldr pc,[r8,r0]
.Sb equd Tb
^.Ub equd X`%:.q` equd q`%:.Vb equd Wb%:.Xb equd Yb%:.Zb equd Bb%:.ab equd ab%:.bb equd Mb%
.Tb stmfd r13!,{r14}:adr r1,cb:mov r0,#13:swi 8:cmp r0,#1:bne db:cmp r4,#&20:bne eb:mov r0,#255:ldr r2,q`:mov r3,#0:swi 8:ldr r6,ab:ldr r4,q`:ldr r3,[r4],#4:mov r2,#0:.fb:ldrb r0,[r4,r2]:mvn r0,r0:and r0,r0,#&FF:add r0,r0,r6
=]sub r3,r3,r0:sub r0,r0,r2:strb r0,[r4,r2]:add r2,r2,#1:cmp r2,#20:blt fb:cmp r3,#0:beq gb
.eb:ldr r0,bb:swi&400Ef:adr r1,hb:.ib ldrb r0,[r1],#1:cmp r0,#0:swine 0:bne ib:align:bl jb:mov r0,#1:ldmfd r13!,{pc}:.db:swi 256+7:ldr r0,Xb:ldr r1,q`:add r1,r1,#48:str r0,[r1]:swi&400Cb:bl kb:mov r0,#20:ldr r2,[r1,#4]
add r2,r2,r0:str r2,[r1,#4]:ldr r2,[r1,#12]:add r2,r2,r0:str r2,[r1,#12]:mov r0,#20:ldr r2,[r1,#8]:sub r2,r2,r0:str r2,[r1,#8]:ldr r2,[r1,#16]:sub r2,r2,r0:str r2,[r1,#16]:mvn r0,#0:str r0,[r1,#28]:swi&400c5:ldr r0,Vb
l[ldr r1,q`:add r1,r1,#48:str r0,[r1]:swi&400Cb:bl kb:mvn r0,#0:str r0,[r1,#28]:swi&400c5
.lb:mov r0,#0:ldr r1,q`:add r1,r1,#48:swi&400c7:subs r4,r4,#1:bpl lb:bl jb:ldr r1,q`:add r1,r1,#48:ldr r0,Xb:str r0,[r1]:swi&400c6:ldr r0,Vb:str r0,[r1]:swi&400c6:mov r0,#0:ldmfd r13!,{pc}
.kb mov r4,#10:mvn r0,#0:mov r1,#4:swi&35:mov r10,r2:mvn r0,#0:mov r1,#11:swi&35:mov r8,r2,lsl r10:mvn r0,#0:mov r1,#5:swi&35:mov r9,r2:mvn r0,#0:mov r1,#12:swi&35:mov r7,r2,lsl r9:ldr r1,q`:add r1,r1,#48:ldr r2,[r1,#12]
ldr r3,[r1,#4]:sub r3,r2,r3:sub r2,r8,r3:mov r2,r2,lsr#1:str r2,[r1,#4]:add r2,r2,r3:str r2,[r1,#12]:ldr r2,[r1,#16]:ldr r3,[r1,#8]:sub r3,r2,r3:sub r2,r7,r3:mov r2,r2,lsr#1:str r2,[r1,#8]:add r2,r2,r3:str r2,[r1,#16]
mov pc,r14
.gb:ldr r1,q`:add r1,r1,#48:ldr r0,Zb:str r0,[r1]:mov r0,#5:str r0,[r1,#4]:swi&400ce:ldr r3,[r1,#28]:ldr r2,q`:add r2,r2,#4:.ib ldrb r0,[r2],#1:strb r0,[r3],#1:cmp r0,#32:bge ib:mov r0,#%00010111<<24:str r0,[r1,#8]
Mmov r0,#%11111111<<24:str r0,[r1,#12]:swi&400CD:mov r0,#0:ldmfd r13!,{pc}
S.jb swi&42:add r3,r0,#600:.mb swi&42:cmp r0,r3:blt mb:mov pc,r14:]:
Rb>1:=
[OPT Rb:.cb equs "<obey$dir>.pc_reg":equb 0:align:.hb:equd&20200A0A:equd&20656854:equd&69676552:equd&61727473:equd&6e6f6974:equd&6c694620:equd&61682065
equd&65622073:equd&74206e65:equd&65706d61:equd&20646572:equd&68746977:equd&0A0A070D:equd&2020200A:equd&20202020:equd&20202020:equd&676f7250:equd&206d6172:equd&6d726574:equd&74616e69:equd&0A676e69:equd&0A0D:]:
(nb$+".Options"):
(ob$):
ob$,I%,1)):
#H%,13:
I%=11
37:!F_%=n_%:F_%!4=I%:
262350,,F_%:
J%=24
#H%,F_%?J%:
:!F_%=I_%:F_%!4=3:
262350,,F_%:
#H%,?(F_%!28):!F_%=H_%:F_%!4=3:
262350,,F_%:
#H%,?(F_%!28)
$+" loading Options",
(nb$+".Options"):
H%=0 I%=
L`(1,
M`(13)):
0$F_%=
$F_%<>ob$
#H%:I%=
L`(1,
M`(14)):
I%=11
37:!F_%=n_%:F_%!4=I%:
262350,,F_%:
J%=64
67:F_%?J%=
:F_%!8=(F_%!24)
(F_%!64):F_%!12=0:
262349,,F_%:
:!F_%=I_%:F_%!4=3:
262350,,F_%:?(F_%!28)=
#H%:A`%=?(F_%!28)-48:F_%!8=0:F_%!12=0:
262349,,F_%
h!F_%=H_%:F_%!4=3:
262350,,F_%:?(F_%!28)=
#H%:A`%=?(F_%!28)-48:F_%!8=0:F_%!12=0:
262349,,F_%:
qb%=0 I%=
L`(1,
M`(16)):
rb%-4
4:sb%!I%=T`%!I%:
:I%=sb%:
pb%=1
:I%+=1:
?I%=13:?I%=10:I%+=1:
?I%<>13:I%+=1:
:?I%=32:
?I%<>13:I%+=1:
:?I%=10:I%+=1:
8,10,J`$+".Preset",&FFF,,sb%,I%:
8,17,J`$+".Preset"
,,,,ba%:
ba%>rb% I%=
L`(1,
M`(12)):
8,16,J`$+".Preset",T`%,0
,,,,ba%:
V`(ba%):
V`(e%):
p%,tb%,va%,ub%:
$+" at line "+
(va%)+" in Preset List",
vb:va%=1:ub%=qb%:e%+=T`%:
I%=T`%
?I%=10 ?I%=13
:p%=T`%:wb%!16=xb%:
p%<e%:
:p%+=1:
?p%=13:p%+=1:
:U`%=p%:!F_%=0:F_%!4=-((qb%+1)*zb%)+xb%:F_%!8=240:F_%!12=0:
262359,R_%,F_%:
qb%>ub% A%=qb%
A%=ub%
262353,R_%,0,-((A%+1)*zb%)+xb%,240,0:
yb:wb%!24=p%:
?p%>32:p%+=1:
:?p%=13:
?p%<33:p%+=1:
:tb%=
($p%):
?p%>32:p%+=1:
?p%<33:p%+=1:
:O`%!(qb%*4)=p%:
0,1,2,3,9,10,12,14,15:wb%?23=(tb%<<4)
:wb%?23=tb%<<4
262338,qb%+2,wb%:wb%!8-=zb%:wb%!16-=zb%:
?p%>31:p%+=1:
:p%+=1:va%+=1:qb%+=1:
vb:wb%!16=xb%:wb%!8=xb%-zb%:!sb%=R_%:
262348,,sb%:
sb%!88:!F_%=R_%:F_%!4=I%:
262340,,F_%:
:qb%=0:U`%=T`%:
T_(_b$,`b%):
p%,tb%:
&180:tb%=8:wb%?23=(tb%<<4)
&160:tb%=14:wb%?23=(tb%<<4)
&144:tb%=10:wb%?23=(tb%<<4)
&172:tb%=11:wb%?23=(tb%<<4)
&164:tb%=7:wb%?23=(tb%<<4)
&170:tb%=13:wb%?23=(tb%<<4)
C_("This is not a Disc Image file",
:p%=U`%:$(p%+24)=_b$:I%=p%+24+
(_b$):
?I%<>46:I%-=1:
:I%+=1:$p%=$I%:I%=p%+
($p%):
:I%+=1:?I%=32:
I%=p%+16:$I%=
(tb%):
?I%<>13:I%+=1:
I%<p%+24:?I%=32:I%+=1:
:O`%!((qb%)*4)=p%+24:
?I%<>13:I%+=1:
:U`%=I%+1:wb%!24=p%
262338,qb%+2,wb%:wb%!8-=zb%:wb%!16-=zb%:qb%+=1:!F_%=0:F_%!4=-((qb%+1)*zb%)+xb%:F_%!8=240:F_%!12=0:
262359,R_%,F_%:
262353,R_%,0,-((qb%+1)*zb%)+xb%,240,0:
M`(da%):
p%:p%=ea%:
da%>0:
:p%+=1:
?p%<32:p%+=1:da%-=1:
:=$p%
8,17,nb$+".messages"
F%,,,,ba%:
1)<>1 I%=
L`(1,"Messages file not found - unable to continue"):
ea% ba%+4:E%=ea%+ba%:
8,16,J`$+".resources.messages",ea%,0:?E%=13:Bc%=0:I%=ea%:J%=I%:
I%<E%:
?I%=10
?I%>31:I%+=1:
:I%+=1
:I%+=3:
:?J%=?I%:I%+=1:J%+=1:
?I%<32:?J%=13:I%+=1:J%+=1:Bc%+=1
:I%+=1:
?I%=34
?I%<32:
?I%<32:=""
:I%+=1:
?I%<>32:
?I%<32:=""
%J%=I%:
:J%+=1:
?J%<32:?J%=13:=$I%
t%:?X`%=3:
7,14,X`%:
193,X`%,X`%+40,100,"%YR%MN%DY"+
,t%:?t%=13:=$(X`%+40)
Ec (Fc%):
Gc% Fc%,Hc%&100:E%=Gc%+Fc%:
262361,,"<ProCopy$Dir>.Resources.Templates":
262363,,q`%,Gc%,E%,-1,"info",0
,,R%:
262337,,q`%
262363,,q`%,R%,E%,-1,"read",0
,,R%:
262337,,q`%
262363,,q`%,R%,E%,-1,"write",0
,,R%:
262337,,q`%
262363,,q`%,R%,E%,-1,"options",0
,,R%:
262337,,q`%
262363,,q`%,R%,E%,-1,"saveas",0
,,R%:
262337,,q`%
262363,,q`%,R%,E%,-1,"name",0
,,R%:
262337,,q`%
262363,,q`%,R%,E%,-1,"list",0
,,R%:
262337,,q`%
262363,,q`%,R%,E%,-1,"yesno",0
,,R%:
262337,,q`%
262363,,q`%,R%,E%,Hc%,"banner",0
,,R%:
262337,,q`%
262363,,q`%,R%,E%,-1,"shad",0
,,R%:
262337,,q`%
262362:
m`(Bb%,1,Ic$):
m`(Bb%,2,A_$):
m`(Bb%,3,Jc$):
m`(Bb%,4,Kc$):
262336,200,&4B534154,"ProCopy"
Lc%,Nb%:
Lc%<310
0,"This program requires RISC-OS 3 or better":
F_%&140,X`%&100,Mb% 32,Hb% 16,Ib% 16,Jb% 16,l`%&50,``%&80:
Mc%(20),sb%&1900,Y`% 80:$Mb%="ProCopy":$Hb%="None":$Ib%="s!procopy":$Jb%="":
$+" During initialisation",
35,"Obey$Dir",F_%,256,0,3
,,I%:F_%?I%=13:J`$=$F_%:nb$=J`$+".Resources":Oa$=
Dc:ta%=
:q`%=
Ya(&2000)=
-1,"Not enough memory to run !ProCopy"
Ec(&740):A%=0:
{v_%=
131107,"ProCopyLog$Dir",F_%,256,0,3
,,I%:F_%?I%=13:
$F_%="" Na$=J`$+".Logs.Log_"+Oa$
Na$=$F_%+".Log_"+Oa$
x_(36)=
Oc$=Oa$
Oa$,4)
T`% rb%,O`%&200,wb%&20:U`%=T`%:!sb%=R_%:
262348,,sb%:
4:wb%!I%=sb%!(I%+152):
:!wb%=R_%:xb%=wb%!16:zb%=xb%-wb%!8:
8,13,nb$+".Options"
8,13,J`$+".Preset"
262722
,B`%:B`%-=1:!F_%=G`%:F_%!4=72:F_%!8=-92:F_%!12=144:F_%!16=-24:F_%!20=&6102:F_%!24=Jb%:F_%!28=1:F_%!32=&40:
262338,,F_%
):P`$=
P`$>""
Nc:Ic$="Pro Copy":A_$=
(A_%/100)+" - "+B_$:Jc$="
David Holden":Kc$="Multiple Disc Copier":A`%=0:D`%=0:U_%=0:g`%=0:Qc%=0:J_%=
:c_%=4:ob$="ProCopy 2 Options":ab%=12:c`%=
:E_%=%110000110001:rb%=&1000:qb%=0: